﻿using KuiHuaBaoDian.Services.Battle.Entity;

namespace KuiHuaBaoDian.Services.Battle.Behaviour {

    /// <summary>
    /// 保持行为
    /// </summary>
    public interface IBattleBehaviour_Hold : IBattleBehaviour {

        /// <summary>
        /// 实体
        /// </summary>
        new public interface IEntity : IBattleBehaviour.IEntity {
        }
    }

    [Implement(typeof(IBattleBehaviour_Hold))]
    internal sealed class KHBD_BattleBehaviour_Hold : KHBD_BattleBehaviour, IBattleBehaviour_Hold {

        protected override void Initialize() {
        }

        protected override IBattleBehaviourInfo LogicFrame() {
            return new KHBD_BattleBehaviourInfo {
                Type = BattleBehaviourType.Hold,
            };
        }

        protected override void Execute(IBattleBehaviourInfo info) {
        }

        protected override void Update(IBattleBehaviourInfo info, float interpolation) {
            StateMachine.State = BattleEntityState.Idle;
        }
    }
}
